<ResponseField name="id" type="string" required>
  The unique ID of the short link.
</ResponseField>

<ResponseField name="domain" type="string" required>
  The domain of the short link. If not provided, the primary domain for the
  workspace will be used (or dub.sh if the workspace has no domains).
</ResponseField>

<ResponseField name="key" type="string" required>
  The short link slug. If not provided, a random 7-character slug will be
  generated.
</ResponseField>

<ResponseField name="externalId" type="string | null" required>
  This is the ID of the link in your database. If set, it can be used to
  identify the link in the future. Must be prefixed with `ext_` when provided to
  `links.get`, `links.update`, and `links.delete` methods.
</ResponseField>

<ResponseField name="url" type="string" required>
  The destination URL of the short link.
</ResponseField>

<ResponseField name="archived" type="boolean" required default="false">
  Whether the short link is archived.
</ResponseField>

<ResponseField name="expiresAt" type="string | null" required>
  The date and time when the short link will expire in ISO-8601 format.
</ResponseField>

<ResponseField name="expiredUrl" type="string | null" required>
  The URL to redirect to when the short link has expired.
</ResponseField>

<ResponseField name="password" type="string | null" required>
  The password required to access the destination URL of the short link.
</ResponseField>

<ResponseField name="proxy" type="boolean" required default="false">
  Whether the short link uses Custom Social Media Cards feature.
</ResponseField>

<ResponseField name="title" type="string | null" required>
  The title of the short link generated via api.dub.co/metatags. Will be used
  for Custom Social Media Cards if proxy is true.
</ResponseField>

<ResponseField name="description" type="string | null" required>
  The description of the short link generated via api.dub.co/metatags. Will be
  used for Custom Social Media Cards if proxy is true.
</ResponseField>

<ResponseField name="image" type="string | null" required>
  The image of the short link generated via api.dub.co/metatags. Will be used
  for Custom Social Media Cards if proxy is true.
</ResponseField>

<ResponseField name="rewrite" type="boolean" required default="false">
  Whether the short link uses link cloaking.
</ResponseField>

<ResponseField name="ios" type="string | null" required>
  The iOS destination URL for the short link for iOS device targeting.
</ResponseField>

<ResponseField name="android" type="string | null" required>
  The Android destination URL for the short link for Android device targeting.
</ResponseField>

<ResponseField name="publicStats" type="boolean" required default="false">
  Whether the short link's stats are publicly accessible.
</ResponseField>

<ResponseField name="tagId" type="string | null" required>
  The unique ID of the tag assigned to the short link. This field is deprecated
  – use `tags` instead.
</ResponseField>

<ResponseField name="tags" type="object[] | null" required>
  The tags assigned to the short link.

  <Expandable title="properties">
    <ResponseField name="tags.id" type="string" required>
      The unique ID of the tag.
    </ResponseField>

    <ResponseField name="tags.name" type="string" required>
      The name of the tag.
    </ResponseField>

    <ResponseField name="tags.color" type="string" required>
      The color of the tag.
    </ResponseField>

  </Expandable>
</ResponseField>

<ResponseField name="comments" type="string | null" required>
  The comments for the short link.
</ResponseField>

<ResponseField name="shortLink" type="string" required>
  The full URL of the short link, including the https protocol (e.g.
  `https://dub.sh/try`).
</ResponseField>

<ResponseField name="qrCode" type="string" required>
  The full URL of the QR code for the short link (e.g.
  `https://api.dub.co/qr?url=https://dub.sh/try`).
</ResponseField>

<ResponseField name="utm_source" type="string | null" required>
  The UTM source of the short link.
</ResponseField>

<ResponseField name="utm_medium" type="string | null" required>
  The UTM medium of the short link.
</ResponseField>

<ResponseField name="utm_campaign" type="string | null" required>
  The UTM campaign of the short link.
</ResponseField>

<ResponseField name="utm_term" type="string | null" required>
  The UTM term of the short link.
</ResponseField>

<ResponseField name="utm_content" type="string | null" required>
  The UTM content of the short link.
</ResponseField>

<ResponseField name="userId" type="string" required>
  The user ID of the creator of the short link.
</ResponseField>

<ResponseField name="workspaceId" type="string" required>
  The workspace ID of the short link.
</ResponseField>

<ResponseField name="clicks" type="number" required default="0">
  The number of clicks on the short link.
</ResponseField>

<ResponseField name="lastClicked" type="string | null" required>
  The date and time when the short link was last clicked.
</ResponseField>

<ResponseField name="createdAt" type="string" required>
  The date and time when the short link was created.
</ResponseField>

<ResponseField name="updatedAt" type="string" required>
  The date and time when the short link was last updated.
</ResponseField>

<ResponseField name="projectId" type="string" required>
  The project ID of the short link. This field is deprecated – use `workspaceId`
  instead.
</ResponseField>
